[アップデート]AWS GlueでAmazon S3 Access Grantsが利用できるようになりました

[アップデート]AWS GlueでAmazon S3 Access Grantsが利用できるようになりました

Glue SparkジョブでS3 Access Grantsによるアクセス制御ができるようになったよ
Clock Icon2024.12.05

みなさんこんにちは、杉金です。
AWS GlueでAmazon S3 Access Grantsが利用できるようになりました。
ただし、サポートされるジョブタイプはSparkのみです。

https://aws.amazon.com/jp/about-aws/whats-new/2024/12/amazon-s3-access-grants-integrate-glue/

Glue SparkジョブでS3 Access Grantsを使用することで、Entra IDやOktaなどのIdpやIAMプリンシパルとS3に保存されているデータセットとを紐付けることができます。これにより、バケットポリシーや個別のIAMロールを作成・管理することなくS3の権限を簡単に管理できるようになりました。

S3 Access Grantsってなんだっけ?

S3 Access Grantsは、S3におけるアクセス制御のひとつで、S3バケットポリシーやIAMポリシーのポリシーサイズ制限内に収まりきらない、大規模なデータセットに対するアクセス制御を実現するための機能です。

S3 Access Grantsの概要
Overview-of-S3-Access-Grants

引用:https://aws.amazon.com/jp/blogs/news/scaling-data-access-with-amazon-s3-access-grants/

Glue以外にもS3 Access Grantsと統合されているサービスはあり、一覧は以下に記載されています。

https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-integrations.html

AWS Glueとの統合のしくみ

Glue SparkジョブがどのようにS3 Access Grantsを利用してアクセスするかを解説したものが以下の図です。

glue50-s3-access-grants

引用:https://docs.aws.amazon.com/glue/latest/dg/security-s3-access-grants.html

  1. ユーザーは、S3に保存したデータにアクセスするGlue Sparkジョブを送信します。
  2. Glueは、バケット、プレフィックス、またはオブジェクトへのアクセスを許可する一時的な認証情報をユーザーに提供するために、S3 Access Grantsにリクエストします。
  3. ユーザーのSTSトークンの形式で一時的な認証情報を返します。トークンは、S3バケット、プレフィックス、またはオブジェクトにアクセスするためのスコープが設定されています。
  4. GlueはSTSトークンを使用してS3からデータを取得します。

制限事項

本機能を利用するにあたり、いくつか制限事項があります。

  • S3 Access Grantsは、AWS Glueバージョン5.0以降でサポートされています。
  • サポートされるジョブタイプは、Sparkのみです。
  • サポートされるopen-table formatsは、Delta LakeとHudiのみです。
  • 以下の機能は、S3 Access Grantsでの使用はサポートされていません。
    • Apache Icebergテーブル
    • IAMロールを使用する S3へのAWS CLIリクエスト
    • オープンソースのS3AプロトコルによるS3アクセス

https://docs.aws.amazon.com/glue/latest/dg/security-s3-access-grants.html#security-s3-access-grant-consideration

料金

S3 Access Grantsを利用したリクエストあたりに利用料が発生します。東京リージョンの場合は以下です。

  • S3 Access Grants Requests (per 1,000 requests)
    • 0.03USD

https://aws.amazon.com/jp/s3/pricing/

https://aws.amazon.com/jp/glue/pricing/

さいごに

今回のアップデートにより、セキュリティを維持しながら、権限管理の負担に繋がることが期待できます。また、企業が持つ既存のIdpとの連携ができることも大きな利点です。大規模なデータを扱うことの多いGlueにおいて、S3 Access Grantsとの相性はよさそうです。
個人的に、S3 Access Grantsのことを忘れていたので、思い出させてくれるよいきっかけとなりました。

参考資料

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.